home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
CRS
/
crs55.d81
/
points.fil
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2009-10-10
|
14KB
|
446 lines
1 GOTO910
2 REM ** ML STOP KEY DISABLE **
3 PRINT"x[169]=[141][169][141]X` [234][255][169][255][133][145]L4[234]x[169]1[141][169][234][141]X`
4 [153]"xhhh+hNOThhhhhhhPRINT#HRUNHX`111"
5 [153]"hhhhhhh`1"
6 [143] ** 4 - POP ML SUBROUTINE **
10 [143] **GENERAL INPUT ROUTINE **
15 :
20 [143] ** TO OUR BEST KNOWLEDGE THIS
21 [143] PROGRAM IS FREE FOR
22 [143] DUPLICATION IN CANADA.
23 [143] IF YOU HAVE CONTARY
24 [143] INFORMATION, PLEASE
25 [143] CONTACT COMMODORE CANADA AND
26 [143] EVERY EFFORT WILL BE MADE TO
27 [143] WITHDRAW COPIES OF THIS
28 [143] PROGRAM.
30 :
35 [143] +++ INPUT SECTION +++
40 [151]UO,0:UR$[178]"":UI$[178]""
42 [139]UL[178]0[167]UL[178]80
45 [153]" CMDCMD";:[151]UC,0
50 [161]UI$:[139]UI$[178]""[167]50
55 [139]UI$[178][199](13)[175][195](UR$)[177][178]1[167][151]UC,1:[153]" CMD";:[137]85
60 [139]UI$[178][199](20)[167]105
62 [139] [195](UR$)[178][177]UL[167]50
65 [141]120:[143] CHECK FOR VALID CHARACTER
70 UR$[178]UR$[170]UI$
75 [153]UI$;
80 [137]50
85 [143] +++ CHECK FOR HELP REQUEST +++
90 [139]UR$[178]UX$[167]195:[143] EXIT TO HELP ROUTINE
95 [139]UF[178]1[167][141]240
100 UF[178]0:[153]:[142]
102 [143] ++ CHECK DELETE ++
105 [139][195](UR$)[179]1[167]50
110 UR$[178][200](UR$,[195](UR$)[171]1)
115 [153]"CMD CMDCMD";:[137]50
120 [143] ++ CHECK FOR VALID CHARACTERS ++
125 [139][195](US$)[178]0[167]150
127 US$[178]US$[170]UX$
130 [129]US[178]1[164][195](US$)
135 [139]UI$[178][202](US$,US,1)[167][142]
140 [130]
145 UI$[178]"":[142]
150 [143] ** STANDARD INPUT **
152 [139][198](UI$)[178]46[167][142]
155 [139]UI$[178][199](32)[167][142]
160 [139][198](UI$)[179]48[176][198](UI$)[177]57[167]170
165 [142]
170 [139][198](UI$)[179]65[176][198](UI$)[177]90[167]180
175 [142]
180 [139][198](UI$)[179]193[176][198](UI$)[177]218[167]UI$[178]"":[142]
185 [139][194](UT)[178]UU%[167]UI$[178][199]([198](UI$)[171]128):[142]
187 [142]
190 UI$[178]"":[142]
195 UF[178]1:[143] +++ HELP ROUTINE EXIT +++
197 [141]250
200 [141]245
203 [139]WW[178]1[167][129]UQ[178]UB[164]UB[170]919
205 [139]WW[178]0[167] [129]UQ[178]UB[164](U2%[172]256[170]U1%[170]U3%[171]2)
210 UQ%(UQ[171]UB)[178][194](UQ):[130]:[153]"LOAD"
215 UZ[178]1:UV%[178][194](UT)
216 [137]300
217 UZ[178]0:US$[178]UJ$:UG$[178]UK$:UP[178]UJ:UL[178]UK
218 [139][194](50003)[178]0[167][151]53281,1:[153]"LOAD";:[151]53281,6:[151]53280,14:[137]220
219 [153]"LOAD";
220 UT$[178]UL$:[151]UT,UV%:[129]UQ[178]UB[164](U2%[172]256[170]U1%[170]U3%[171]3)
222 [139]WW[178]0[167][129]UQ[178]UB[164](U2%[172]256[170]U1%[170]U3%[171]3)
225 [151]UQ,UQ%(UQ[171]UB):[130]
230 [151]U1,U1%
232 [151]U2,U2%
233 [151]U4,U4%
234 [151]U3,U3%[171]1
235 [139] WW[178]1[167] [142]
236 [137]35
240 UD%[178]((U2%[172]256[170]U1%[170]U3%)[171]UB)[173]40:[153][200](UD$,UD%[170]1):[142]
245 [153][200](UD$,24);" HELP COMING WAIT ":[142]
250 U1%[178][194](U1):U2%[178][194](U2):U3%[178][194](U3):U4%[178][194](U4)
251 UJ$[178]US$:UK$[178]UG$:UL$[178]UT$:UJ[178]UP:UK[178]UL
255 [142]
300 [143] ** MENU **
301 :
302 [153]"LOAD":[151]UT,UU%:[139][194](50003)[178]0[167][151]53281,9:[151]53280,8
303 :
305 [153]" MENU"
310 [153]" --------------------------------------"
315 [153]" 1. BEGIN POINTS "
320 [153]" 2. STUDENT INSTRUCTIONS"
325 [153]" 3. TEACHER INSTRUCTIONS"
330 [153]" 4. MODIFICATION OF PROGRAM"
335 [153]" 5. QUIT"
340 [153]" --------------------------------------"
345 [153]" PRESS A NUMBER KEY (1-5) ";
350 UL[178]1:US$[178]"12345":[141]35:[143] INPUT ROUTINE
351 [139][195](UR$)[177]1[167]300
352 US$[178]"":UT$[178]" (null)(null)RIGHT$(null)(null)(null)"
355 [145][197](UR$)[141]1000,400,500,600,396
360 [137]300
395 [143] ** RE-ENABLE STOP KEY AND END **
396 [139][194](50003)[179][177]1[175][194](50003)[179][177]160[175][194](50003)[179][177]0[167]399
397 [158]UU[170]71:[139][194](50003)[178]0[167][151]53281,6:[151]53280,14
398 [153]"CONTLOAD":[128]
399 [141]875:[142]
400 [143] ** STUDENT INSTRUCTIONS **
405 [153]"LOAD":[151]UT,UL%:[139][194](50003)[178]0[167][151]53281,0:[151]53280,0
410 UP[178]0:UG$[178]"(null)TUDENT RIGHT$NST":[141]850
420 [153]" (null)HERE ARE INSTRUCTIONS IN THE PROGRAM"
430 [153]" AS YOU NEED THEM, THE (null)VAL(null) WILL GIVE "
440 [153]" THEM TO YOU.
445 PRINT" [202]UST REMEMBER THAT COORDINATE 'X' IS
450 [153]" GIVEN FIRST THEN THE 'Y', AND ALSO"
452 [153]" THAT THE FLASHING DOT IS THE POINT":[153]" THAT THE (null)VAL(null) WANTS.
453 PRINT" [193]FTER '5' CORRECT ANSWERS YOU WILL ADVANCE TO THE NEXT ROUND.
460 [141]835:UP[178]2:[141]850:[153]" (null)OTE:(null)O ADVANCE FROM ONE QUESTION
470 PRINT" TO THE NEXT PRESS THE [211][208][193][195][197] BAR.
475 [153]"RIGHT$F AT ANY TIME YOU WISH TO RETURN
480 PRINT" TO THE [205][197][206][213] PRESS H [210][197][212][213][210][206].":GOSUB835:UT$=" POINTS"
490 IFUZ=1THENSYSUP%:GOTO217
499 RETURN
500 REM ** TEACHER INSTRUCTIONS **
501 PRINT"[147]":POKEUT,UL%:IFPEEK(50003)=0THENPOKE53281,2:POKE53280,10
502 UP=0:UG$="[212]EACHER [201]NST":GOSUB850
503 PRINT" [212]O THE BEST OF OUR KNOWLEDGE,"
504 PRINT" THIS PROGRAM IS IN THE PUBLIC"
505 PRINT" DOMAIN. [201]F THIS IS NOT THE CASE"
506 PRINT" PLEASE CONTACT:"
507 PRINT" [195]OMMODORE [194]USINESS [205]ACHINES"
508 PRINT" 3370 [208]HARMACY [193]VE.
509 [153]" ATNGINCOURT, (null)NTARIO"
510 [153]" LENANADA (null)1(null) 2(null)4"
511 [153]" (416) 499-4292"
512 UP[178]1:[141] 835:[141] 850:
513 [153]" (null)ROGRAM (null)AME: (null)OINTS
514 PRINT" [215]RITTEN [194]Y : [202]O [193]NN [195]OMITO"
515 PRINT" [213]PGRADED [194]Y :
516 [153]" (null)HIS PROGRAM WILL RUN ON ANY
518 PRINT" [208][197][212] 64 [195][207][205][208][213][212][197][210]
519 [153]" LEN(null)(null)(null)(null)STR$(null)(null)VAL 64 LEN(null)(null)(null)(null)(null)VAL(null)
520 PRINT"
521 [141]835:[141]850
530 [153]" STR$ATA LINES MAY BE ADDED AT THE END OF
532 PRINT" THE PROGRAM IN ORDER TO ADD OR CHANGE
534 [153]" THE PICTURE'S THAT THE (null)VAL(null) CAN DRAW
535 PRINT" WHEN THE STUDENT TRIES TO 'CONNECT THE"
538 PRINT" DOTS.'
540 [153]" ATNLL THAT IS NEEDED IS TO TYPE IN THE
542 PRINT" [216] & [217] COORDINATES ACCORDING TO YOUR
544 [153]" PICTURES COORDINATES.
546 PRINT" [212]HE FIRST VALUE IS THE NUMBER OF":PRINT" POINTS IN THE PICTURE.
570 [141]835:UT$[178]" POINTS"
590 [139]UZ[178]1[167][158]UP%:[137]217
599 [142]
600 [143] ** PROGRAM MODIFICATION INST **
601 [153]"LOAD":[151]UT,UL%
605 UP[178]0:UG$[178]"(null)ROGRAM (null)OD":[141]850
645 [153]" (null)HERE IS A LITTLE MACHINE LANGUAGE
650 PRINT" PROGRAM USED FOR MAKING THE GRID/BOARD
655 [153]" THIS ROUTINE IS TOTALLY RELOCATABLE.
660 GOSUB835:GOSUB850
665 PRINT" [202]UST CHANGE VARIABLE '[215]'[146] IN LINE 902
670 [153]" TO ANYTHING YOU LIKE. (null)EMEMBERING THAT
675 PRINT" THE ROUTINE IS 12 CHARACTERS IN LENGTH"
680 PRINT" [193]LSO THAT THE AMOUNT LISTED IS THE
681 [153]" START OF THE ROUTINE NOT THE END.
685 GOSUB835
690 IFUZ=1THENSYSUP%:GOTO217:UT$=" POINTS"
699 RETURN
700 REM ** TO USE 8032 LOAD CBM4032 **
710 PRINT"[147]BEFORE RUNNING THIS PROGRAM ON AN 8032
720 [153]" LOAD THE 'CBM 4032' PROGRAM"
730 [158]UU[170]71
740 [128]
797 [143] ** TO USE 8032 LOAD CBM4032 **
798 [153]"LOADBEFORE RUNNING THIS PROGRAM ON AN 8032 LOAD CBM 4032 PROGRAM"
799 [158]1093:[128]
800 [143] ** T I T L E P A G E **
802 [153]"LOAD";:[151]UT,UU%:[139][194](50003)[178]0[167][151]53280,14:[151]53281,6
804 [129]I[178]1[164]38:[153]"SPC(WAIT";:[130]
806 [129]I[178]1[164]22:[153]"CMDSPC(WAIT";:[130]
808 [129]I[178]1[164]37:[153]"CMDCMDSPC(WAIT";:[130]
810 [129]I[178]1[164]22:[153]"ONCMDSPC(WAIT";:[130]
812 [153]"STEP WAIT
814 PRINT" [146] [146][169]
816 [153]" WAIT TAB((null)
818 PRINT"[223] [146]
820 [153]"C O M M O D O R E
822 PRINT"EDUCATIONAL
824 [153]"SOFTWARE
826 REM ** COMMODORE LOGO **
827 PRINTLEFT$(UD$,24);"PRESS SPACE BAR OR WAIT[146]":I=0
828 GETA$:IFA$<>" "THENI=I+1:IFI<250THEN828
830 T1$="":T2$="":T3$="":T4$="":I=0
832 GOTO300
835 REM ** SPACE BAR PRESS **
840 POKEUO,0:PRINTLEFT$(UD$,24);"PRESS SPACE BAR TO CONTINUE[146]"
844 GETUI$:IFUI$<>" "THEN844
846 RETURN
850 REM ** PAGE DESIGN ROUTINE **
852 UP=UP+1
855 PRINT"[147]"LEFT$(UT$+UP$,21);RIGHT$(UP$+UG$,18)
860 PRINT" --------------------------------------"
864 IFUH<>0THEN870
865 PRINTLEFT$(UD$,24);LEFT$(UP$,7);"HELP - PRESS H <RETURN>"
870 UH=0:PRINT"":RETURN
875 REM ** PLEASE WAIT REMARK **
880 PRINTLEFT$(UD$,24);" ONE MOMENT PLEASE... "
885 RETURN
900 REM ** SET UP VARIABLES **
901 UX$="H":DIMUQ%(1000):UB=32768:U1=196:U2=197:U3=198:U4=216:UC=167:UU=1024
902 UT=59468:UU%=12:UL%=14:UP%=1146:UM=32768:UO=158:POKE 50003,0
903 IFPEEK(50003)=0THENUB=1024:U1=209:U2=210:U3=211:U4=214:UC=204:UU=2048
904 IFPEEK(50003)=0THENUT=53272:UU%=21:UL%=23:UP%=2139:UM=1024:UO=198
905 UD$=""
906 UP$=" "
907 UT$=" [208][207][201][206][212][211] [160][160][160][160][160]":REM PLACE PROGRAM TITLE HERE !!!!!!!!!!!!!!!!!***
908 RETURN
910 REM ** SET VARIABLES **
912 W=842
915 GOSUB900
920 REM ** CHECK FOR 8032 **
925 PRINT"[147]":PRINT"[160]":REM SHIFTED SPACE
930 IFPEEK(UB+40)<>96THENGOSUB700
931 REM ** MEMORY CHECK **
932 IF FRE(0)>2000THEN937
933 PRINT"[147]THIS MACHINE DOES NOT HAVE ENOUGH"
934 PRINT"MEMORY TO RUN THIS PROGRAM !"
935 SYSUU+71
936 END
937 PRINT"[147]":IFPEEK(50003)=0THEN962
940 REM ** BASIC 2.0 OR 4.0 OR C-64 SETUP **
941 POKE1075,133:POKE1076,144:POKE1077,234:POKE1079,4:POKE1080,133:POKE1081,145
942 POKE1091,155:POKE1098,133:POKE1099,144:POKE1100,234:POKE1103,133
943 POKE1104,145:POKE1105,234:POKE1082,234
945 IFPEEK(50003)<>160THEN955
950 POKE1093,88:POKE1094,228:POKE1097,85:POKE1102,228:GOTO965
955 IFPEEK(50003)<>1THEN990
960 POKE1093,49:POKE1094,230:POKE1097,46:POKE1102,230:GOTO965
962 POKE2099,141:POKE2100,20:POKE2101,3:POKE2103,8:POKE2104,141:POKE2105,21
963 POKE2106,3:POKE2115,145:POKE2117,52:POKE2118,234:POKE2121,49:POKE2122,141
964 POKE2123,20:POKE2124,3:POKE2126,234:POKE2127,141:POKE2128,21:POKE2129,3
965 SYSUU+48:REM DISABLE STOP KEY
970 GOSUB800:REM TITLE
980 GOTO300:REM MENU
990 PRINT"[147]THE PGM WILL NOT WORK ON THIS MACHINE!":END
1000 IFUZ=1THENSYSUP%:SYSUP%:UZ=0:REM ** PROGRAM STARTS HERE **
1001 PRINT"[147]";:RESTORE:IFPEEK(50003)=0THENPOKE53281,0:POKE53280,0
1100 REM**POINTS-BY JOANN COMITO-SUNY @ STONY BROOK
1110 REM**WRITTEN 7/30/78
1120 REM**REVISED 8/20/79**
1130 GOSUB2120
1140 D$=""
1150 R$="":GOSUB2160
1180 PRINT"[147]":UH=1:UG$=" [201]NSTRUCTIONS":POKEUT,UL%:GOSUB850
1185 PRINT" [212]HE 64 WILL HELP YOU PRACTICE PLOTTING"
1190 PRINT" POINTS IN A PLANE."
1200 PRINT" [201]F YOU ALREADY KNOW HOW TO LOCATE
1210 [153]" POINTS IN THE COORDINATE PLANE, YOU"
1220 [153]" CAN SKIP AHEAD."
1230 [153]" STR$O YOU WANT TO SKIP AHEAD? ";:US$[178]"YN":UL[178]1:[141]35:A$[178]UR$
1235 [153]"LOAD":[151]UT,UU%
1240 [139]A$[178]"Y"[167]1540
1250 [141]2260
1260 [129]I[178]1[164]5
1270 [141]2370:[141]2410:[141]2450:B[178]20:[141]2850:[130]I
1330 [153]"LOAD DO YOU NEED MORE PRACTICE? ";:US$[178]"YN":UL[178]1:[141]35:A$[178]UR$
1340 [139]A$[178]"N"[167]1540
1350 [153]"LOAD":[151]UT,UL%:UH[178]1:[141]850
1355 [153]" (null)OW THE 64 WILL LET YOU PICK SOME POINTS."
1360 [153]"(null)YPE IN THE LOCATION OF THE POINT BY
1370 PRINT"TYPING IN THE FIRST NUMBER, WHICH IS 'X'
1380 [153]"THEN THE SECOND NUMBER WHICH IS 'Y'.
1390 PRINT"[212]HE 64 WILL SHOW YOU WHERE THE POINT IS
1400 [153]"LOCATED. (null)AKE SURE THAT THE FIRST
1410 PRINT"NUMBER IS BETWEEN -16 & 16. [205]AKE SURE
1420 [153]"THE SECOND NUMBER IS BETWEEN -11 & 11
1430 GOSUB835:PRINT"[147]":POKEUT,UU%
1440 GOSUB2260
1450 FORI=1TO5
1460 GOSUB2490:GOSUB2410:B=19:GOSUB2850:NEXT
1510 PRINT"[148]5[192][192]-10[192][192][192]-5[192][192][192][192]0[192][192][192][192]5[192][192][192][192]10[192][192][192]15X
1520 [153]"LOAD DO YOU STILL NEED PRACTICE? ";:US$[178]"YN":UL[178]1:[141]35:A$[178]UR$
1530 [139]A$[178]"Y"[167]1440
1540 UH[178]1:[153]"LOAD":[151]UT,UL%:[141]850
1545 [153]" (null)OW THE 64 WILL SHOW YOU SOME POINTS.
1550 PRINT" [217]OU TYPE IN THE LOCATION OF THE POINT
1560 [153]" BY TYPING IN THE FIRST NUMBER, WHICH"
1570 [153]" IS 'X' THEN THE SECOND NUMBER IS 'Y'. "
1580 [141]835:[153]"LOAD":[151]UT,UU%
1590 [141]2260
1600 [129]I[178]1[164]5
1610 [141]2370:[141]2370:[141]2410:B[178]19:[141]2850:[141]2560:[130]
1670 [153]"LOAD DO YOU WANT MORE PRACTICE? ";:US$[178]"YN":UL[178]1:[141]35:A$[178]UR$
1680 [139]A$[178]"Y"[167]1590
1690 [153]"LOAD":[151]UT,UL%:[141]850
1695 [153]"(null)HE 64 WILL GIVE YOU THE LOCATION OF A"
1700 [153]"POINT. (null)OU MUST MOVE THE DOT UNTIL"
1710 [153]"IT IS AT THE CORRECT LOCATION."
1760 [153]" '8' TO MOVE DOT (null)P 8"
1770 [153]" '4' TO MOVE (null)EFT (null)"
1780 [153]" '6' TO MOVE (null)IGHT 4TAN TAN6"
1790 [153]" '2' TO MOVE STR$OWN (null)"
1800 [153]" 2"
1810 [153]:[153]"ATNFTER THE DOT IS AT THE CORRECT"
1820 [153]"LOCATION HIT THE RETURN KEY."
1830 [153]:[153]"(null)HE 64 WILL GIVE YOU SEVERAL POINTS TO
1840 PRINT"PLOT. [193]FTER THE LAST POINT PET WILL
1850 [153]"'CONNECT THE DOTS.' IF YOU HAVE
1860 PRINT"LOCATED THE DOTS CORRECTLY YOU SHOULD
1870 [153]"SEE A PICTURE.
1880 GOSUB835:PRINT"[147]":POKEUT,UU%
1890 GOSUB2950
1900 IFN=1000THEN1960
1910 GOSUB3090
1920 D=22:R=1:GOSUB1980
1930 PRINT"TRY ANOTHER PICTURE? [157][157][157][157][157][157][157][157][157][157][157][157][157]";
1935 US$="YN":UL=1:GOSUB35:A$=UR$
1940 IFA$="Y"THEN1890
1950 PRINT"[147]HAVE A GOOD DAY!":GOSUB835:RETURN
1960 PRINT"[147] SORRY, THE 64 IS OUT OF PICTURES.":GOSUB835:RETURN
1980 P$=""+LEFT$(R$,R)+LEFT$(D$,D):PRINTP$;:RETURN
2060 PS=0:P=0:C1$=""
2070 PS=UM+40*D+R:P=PEEK(PS)
2090 IFP>57THENP=P+128
2100 C1$=CHR$(P):RETURN
2120 FORI=WTOW+12:READJ:POKEI,J:NEXTI
2140 DATA169,91,162,0,157,45,128,232,224,31,208,248,96
2150 RETURN
2160 PRINT"[147]":PRINTTAB(17)"POINTS[146]"
2180 PRINT"":PRINTTAB(12)"BY JO ANN COMITO"
2190 PRINT" COPYRIGHT, SUNY STONY BROOK, 1978"
2200 FORI=1TO30
2210 R=INT(RND(1)*999+UM)
2220 IFPEEK(R)<>32THEN2210
2230 POKER,81:NEXT
2250 FORI=1TO2000:NEXTI:RETURN
2260 REM**DRAW AXES**
2270 PRINT"[147]"
2280 FORI=1TO21:AD=UM+5+I*40:MB=INT(AD/256):LB=AD-256*MB:POKEW+5,LB:POKEW+6,MB
2290 SYSW:NEXT
2310 POKE59409,60
2320 PRINT""TAB(20)"Y"
2330 PRINTTAB(19)"10[157][221][157][221][157][221][157][221][157]5[157][221][157][221][157][221][157][221][157]0[157][221][157][221][157][221][157][221][157][157]-5[157][221][157][221][157][221][157][221][157][157][157]-10"
2340 D=11:R=3:GOSUB1980
2350 PRINT"-15[192][192]-10[192][192][192]-5[192][192][192][192]0[192][192][192][192]5[192][192][192][192]10[192][192][192]15X":RETURN
2370 X=INT(RND(1)*31)+1:Y=INT(RND(1)*21)+1:X1=X-15:Y1=11-Y:RETURN
2410 D=Y:R=X+5:GOSUB2060:GOSUB1980
2430 PRINT"[209]":RETURN
2450 D=22:R=1:GOSUB1980
2470 PRINT" THIS POINT IS LOCATED AT [157][157][157][157][157][157][157][157][157][157][157][157] ("X1","Y1")":RETURN
2490 D=22:R=1:GOSUB1980
2510 PRINTLEFT$(UD$,24)" CHOOSE A LOCATION X[146] [157][157][157][157][157][157][157][157]";
2512 US$="-0123456789":UL=3:GOSUB35:X1=VAL(UR$)
2514 IFX1<-16ORX1>16THENPRINT"[145]";:GOTO2510
2516 PRINT"[145] CHOOSE A LOCATION Y[146] [157][157][157][157][157][157][157][157]";
2517 US$="-0123456789":UL=3:GOSUB35:Y1=VAL(UR$)
2518 IFY1<-11ORY1>11THEN2516
2520 IFX1<-16ORX1>16ORX1<>INT(X1)ORY1<-11ORY1>11ORY1<>INT(Y1)THEN2490
2530 X=X1+15:Y=11-Y1:RETURN
2560 D=22:R=1:GOSUB1980
2570 PRINTLEFT$(UD$,24)" WHERE IS THE POINT LOCATED X[146] [157][157][157][157]";
2572 US$="-0123456789":UL=3:GOSUB35:X2=VAL(UR$)
2573 IFX2<-16ORX2>16THENPRINT"[145]";:GOTO2570
2575 PRINTLEFT$(UD$,24)" WHERE IS THE POINT LOCATED Y[146] [157][157][157][157]";
2577 US$="-0123456789":UL=3:GOSUB35:Y2=VAL(UR$)
2578 IFY2<-11ORY2>11THEN2575
2580 IFX2=X1ANDY2=Y1THENPRINTLEFT$(UD$,24)" RIGHT[146] "
2585 IFX2=X1ANDY2=Y1THEN POKEPS,P:GOTO2600
2590 PRINTLEFT$(UD$,24)" WRONG[146] "
2595 FORK=1TO1500:NEXT:GOTO2560
2600 FORK=1TO1500:NEXT
2610 PRINTLEFT$(UD$,24)" ":RETURN
2630 R=20:D=11:GOSUB2060:GOSUB1980
2650 X2=0:Y2=0
2660 PRINT"[209][157]";
2670 GETM$:IFM$=""THEN2670
2675 IFM$=UX$THENWW=1:GOSUB195:PRINT"";:WW=0:GOTO2670
2680 IFM$<>"2"ANDM$<>"4"ANDM$<>"8"ANDM$<>"6"ANDM$<>CHR$(13)THEN2670
2690 IFM$=CHR$(13)THEN2790
2700 IFM$="2"THENY2=Y2-1:IFY2<-10THENY2=Y2+1:GOTO2670
2710 IFM$="2"THENPRINTC1$;"[157]";:D=D+1:GOSUB2060:PRINT"[209][157]";
2720 IFM$="4"THENX2=X2-1:IFX2<-15THENX2=X2+1:GOTO2670
2730 IFM$="4"THENPRINTC1$;"[157][157]";:R=R-1:GOSUB2060:PRINT"[209][157]";
2740 IFM$="8"THENY2=Y2+1:IFY2>10THENY2=Y2-1:GOTO2670
2750 IFM$="8"THENPRINTC1$;"[157][145]";:D=D-1:GOSUB2060:PRINT"[209][157]";
2760 IFM$="6"THENX2=X2+1:IFX2>15THENX2=X2-1:GOTO2670
2770 IFM$="6"THENPRINTC1$;"[157]";:R=R+1:GOSUB2060:PRINT"[209][157]";
2780 GOTO2670
2790 IFP(I,1)=X2ANDP(I,2)=Y2THENRETURN
2800 D=23:R=18:GOSUB1980
2810 PRINT"WRONG[146]";:FORK=1TO900:NEXT:PRINT"[157][157][157][157][157][157] ";
2820 D=11-Y2:R=X2+20:GOSUB1980
2830 PRINTC1$;
2840 GOTO2630
2850 FORK=1TOB
2870 D=Y:R=X+5
2880 IFK/2=INT(K/2)THENGOSUB1980:PRINTC1$:GOTO2920
2890 C$="[209]"
2900 GOSUB1980
2910 PRINTC$
2920 FORJ=1TO100:NEXTJ
2930 NEXTK
2940 RETURN
2950 REM N=#PTS IN PICTURE
2970 READN
2980 IFN=1000THENRETURN
2990 GOSUB2260
3000 FORI=1TON:READP(I,1),P(I,2):NEXT
3010 P(N+1,1)=P(1,1):P(N+1,2)=P(1,2)
3020 FORI=1TON
3030 X1=P(I,1):Y1=P(I,2)
3040 X=X1+15:Y=11-Y1
3050 GOSUB2450
3060 GOSUB2630
3070 NEXTI
3080 RETURN
3090 FORI=1TON
3110 X1=P(I,1):X2=P(I+1,1):Y1=P(I,2):Y2=P(I+1,2)
3120 IFX1=X2ANDY1<Y2THENC$="[221]":C=7:GOTO3230
3130 IFX1=X2ANDY1>Y2THENC$="[221]":C=8:GOTO3230
3140 IFX1<X2ANDY1=Y2THENC$="[192]":C=3
3150 IFX1<X2ANDY1<Y2THENC$="[206]":C=1
3160 IFX1>X2ANDY1<Y2THENC$="[205]":C=2
3170 IFX1<X2ANDY1=Y2THENC$="[192]":C=3
3180 IFX1>X2ANDY1=Y2THENC$="[192]":C=4
3190 IFX1>X2ANDY1>Y2THENC$="[206]":C=5
3200 IFX1<X2ANDY1>Y2THENC$="[205]":C=6
3210 J=ABS(X1-X2)-1
3220 GOTO3240
3230 J=ABS(Y1-Y2)-1
3240 D=11-Y1:R=X1+20
3250 FORK=1TOJ
3260 IFC=1THEND=D-1:R=R+1:GOSUB1980:PRINTC$:NEXTK
3270 IFC=2THEND=D-1:R=R-1:GOSUB1980:PRINTC$:NEXTK
3280 IFC=3THENR=R+1:GOSUB1980:PRINTC$:NEXTK
3290 IFC=4THENR=R-1:GOSUB1980:PRINTC$:NEXTK
3300 IFC=5THEND=D+1:R=R-1:GOSUB1980:PRINTC$:NEXTK
3310 IFC=6THEND=D+1:R=R+1:GOSUB1980:PRINTC$:NEXTK
3320 IFC=7THEND=D-1:GOSUB1980:PRINTC$:NEXTK
3330 IFC=8THEND=D+1:GOSUB1980:PRINTC$:NEXTK
3340 NEXTI:RETURN
3360 REM**DATA PICTURE #1**
3370 DATA9,-5,1,-5,-3,-3,-3,-3,-1,-1,-1
3380 DATA-1,-3,1,-3,1,1,-2,4
4000 DATA1000